AWK এ Numerical এবং Alphabetical Sorting এর উদাহরণ
AWK এ বিল্ট-ইনভাবে সরাসরি সোর্টিং ফাংশন নেই, তবে AWK স্ক্রিপ্টের মাধ্যমে সহজেই Numerical এবং Alphabetical সোর্টিং করা যায়। নিচে Numerical এবং Alphabetical সোর্টিং করার বিভিন্ন উদাহরণ দেওয়া হলো।
১. Numerical Sorting
Numerical সোর্টিং করার জন্য AWK এর সাথে Shell কমান্ড sort ব্যবহার করা যায়। এটি ফাইলের সংখ্যা অনুযায়ী সঠিকভাবে সজ্জিত করতে সহায়তা করে।
উদাহরণ: Numerical সোর্টিং
awk '{print $2}' data.txt | sort -nএখানে, data.txt ফাইলের দ্বিতীয় কলাম প্রিন্ট করে sort -n কমান্ডের মাধ্যমে সংখ্যাগতভাবে সজ্জিত করা হয়েছে।
-nঅপশন: সংখ্যাগত সজ্জিত করতে ব্যবহৃত হয়।
২. Alphabetical Sorting
Alphabetical সজ্জিত করার জন্য AWK এর সাথে sort কমান্ড ব্যবহার করা যায়।
উদাহরণ: Alphabetical সজ্জিত
awk '{print $1}' data.txt | sortএখানে, data.txt ফাইলের প্রথম কলাম প্রিন্ট করে sort কমান্ডের মাধ্যমে অক্ষরানুক্রমিকভাবে সজ্জিত করা হয়েছে।
৩. AWK এর মাধ্যমে Custom Sorting (Numerical)
AWK স্ক্রিপ্টের মাধ্যমে সরাসরি Numerical সজ্জিত করা সম্ভব, তবে এটি একটু জটিল হতে পারে। নিচে একটি উদাহরণ দেওয়া হলো যেখানে Numerical সজ্জিত করার জন্য একটি কাস্টম স্ক্রিপ্ট ব্যবহার করা হয়েছে।
উদাহরণ: Custom Numerical Sorting
awk '{
numbers[NR] = $1 # প্রতিটি লাইনের প্রথম কলাম অ্যারেতে রাখা হচ্ছে
}
END {
# অ্যারের উপর সোজাসুজি সজ্জিত প্রয়োগ (bubble sort)
for (i = 1; i <= NR; i++) {
for (j = i + 1; j <= NR; j++) {
if (numbers[i] > numbers[j]) {
temp = numbers[i]
numbers[i] = numbers[j]
numbers[j] = temp
}
}
}
for (i = 1; i <= NR; i++) {
print numbers[i] # সজ্জিত অ্যারের মান প্রিন্ট করা হচ্ছে
}
}' data.txtএখানে, data.txt ফাইলের প্রথম কলাম Numerical সজ্জিত করা হয়েছে এবং bubble sort অ্যালগরিদম ব্যবহার করে সজ্জিত করা হয়েছে।
৪. AWK এর মাধ্যমে Custom Sorting (Alphabetical)
AWK ব্যবহার করে Alphabetical সজ্জিত করাও সম্ভব।
উদাহরণ: Custom Alphabetical Sorting
awk '{
words[NR] = $1 # প্রতিটি লাইনের প্রথম কলাম অ্যারেতে রাখা হচ্ছে
}
END {
# অ্যারের উপর Alphabetical সজ্জিত প্রয়োগ (bubble sort)
for (i = 1; i <= NR; i++) {
for (j = i + 1; j <= NR; j++) {
if (words[i] > words[j]) {
temp = words[i]
words[i] = words[j]
words[j] = temp
}
}
}
for (i = 1; i <= NR; i++) {
print words[i] # সজ্জিত অ্যারের মান প্রিন্ট করা হচ্ছে
}
}' data.txtএখানে, data.txt ফাইলের প্রথম কলাম Alphabetical সজ্জিত করা হয়েছে।
সারসংক্ষেপ
AWK এর সাথে Shell কমান্ড sort ব্যবহার করে সহজে Numerical এবং Alphabetical সজ্জিত করা যায়। AWK এর মধ্যে কাস্টম সজ্জিত অ্যালগরিদম তৈরি করে নির্দিষ্ট ডেটা প্রক্রিয়াকরণ কাজেও ব্যবহার করা সম্ভব। এর ফলে বড় ডেটাসেটের মধ্যে সঠিকভাবে সজ্জিত ফলাফল পাওয়া যায়।
Read more